Reinforcement Learning - part 1: the fundamentals

Reinforcement Learning (RL) is a general machine learning framework for building computational agents which can, if trained properly, act intelligently in a complex (and often dynamic) environment in order to reach a narrowly-defined goal. Interesting applications of this framework include game AI (e.g., AlphaGo, chess, self-playing Atari and Nintendo games) as well as various challenging problems in automatic control and robotics.

In this post we introduce the fundamentals of Reinforcement Learning, its nomenclature, and problem types including the Gridworld environment shown below where the agent/robot is trained to solve a maze.






Reinforcement Learning - part 2: Q-Learning

In this notebook we derive the most basic version of the so-called Q-Learning algorithm for training Reinforcement agents. We use our Gridworld environment to help illustrate how Q-Learning works in practice.







Reinforcement Learning - part 3: Q-Learning enhancements

Previously in part 2 of the Reinforcement Learning series, we introduced the basic Q-Learning algorithm as a means to approximate the fundamental Q function associated to every RL problem. In this post we continue our discussion, and introduce two simple yet powerful enhancements to the basic Q-Learning algorithm.

The animation below shows how one of these enhancements, based on the exploration-exploitation trade-off, increases the training efficiency of our Gridworld agent.

   






Reinforcement Learning - part 4: Generalizability

In this brief post we discuss generalizability of the Reinforcement Learning framework. Specifically, we use our Gridworld library to see how a fully trained agent act in a new Gridworld environment that it has not seen before.







Nonlinear Supervised Learning- part 1: Two views of functions

In this notebook we start off on our journey towards understanding the fundamentals of nonlinear supervised learning, and the main tools used to tackle such problems. Here we focus on flushing out two basic ways of viewing a mathematical function, the equation view and the table view, and how these views relate fundamentally to the problem of nonlinear supervised learning. This understanding helps frame and motivate the use of function approximators - that is kernels, neural networks, and decision trees.






A Brief Introduction to Machine Learning

How is machine learning used today? Why is machine learning so hot right now? What are the basic elements of every machine learning problem? In this post we address these as well as other fundamental questions about machine learning.






Linear Regression and Mathematical Optimization: Demos

In this post we provide several interactive demonstrations of the fundamental role mathematical optimization plays in regression. Play the animation below to see an example.